class RefImpl {
  constructor(value) {
    this._value = value
  }
  get value() {
    console.log('getValue', this._value)
  }
  set value(newValue) {
    console.log('setValue', newValue)
    this._value = newValue
  }
}
const ref = function (val) {
  return new RefImpl(val)
}
const a = ref(1)
a.value
a.value = 100
a.value.num = 100
